[
Parts of this file are taken from the original POD-Bot 2.5 readme file ]
This
program is
based on Count Floyd's POD-Bot 2.6 source code
(http://podbot.nuclearbox.com).
Don't forget about this, because most
of the work was done by him.
TABLE OF CONTENTS
Installation
Requirement
How to start a Game with Bots
Step by Step Installation
Running YaPB on dedicated servers
Playing with the Bots
Ordering
Bots through Radio Commands
Summary
of Bot Reactions to Radio Commands
Bot Skill
differences
Bot
Personalities
Summary
of Console Commands
INSTALLATION
Installation
is
very simple. Just unzip the downloaded zip file to your
main HL/CS directory:
C:\Sierra\Half-Life
(MOD version)
C:\Sierra\Counter-Strike
(Counter-Strike Retail)
C:\Program
Files\Steam\SteamApps\<account name>\Counter-Strike
(Steam Counter-Strike 1.6)
C:\Program
Files\Steam\SteamApps\<account name>\dedicated server
(Steam Dedicated Server)
If
you are using
CS 1.6, you also need to copy all the waypoint files
in cstrike\addons\yapb\wptcs16 to cstrike\addons\yapb\wptdefault.
This
bot should
also work on Steam which have CS 1.3 installed, just
copy all the files in cstrike folder to your CS 1.3 folder; but that's
not tested.
Note:
The YaPB
bot DLL is self-adaptable and can be used as both normal
bot DLL and metamod plugin. If you have metamod installed, it's
recommended to use this bot as a metamod plugin instead of a normal bot
DLL.
REQUIREMENT
The
Bot
currently only works in Counter-Strike 1.1 - 1.6. If you
haven't updated your CS version to 1.1 (or higher) you will HAVE to do
so before using it.
HOW
TO START A GAME WITH BOTS
Create
a Game
with a map that has waypoints for POD-Bot (take a look
into the "cstrike\addons\yapb\wptdefault" folder - all files with the
extension ".pwf" should be valid waypoint files. You can manually add
bots using the console. To use the console you have to turn it on.
Here's my shortcut properties for Counter-Strike:
D:\Sierra\Half-Life\hl.exe
-console -game cstrike
This
will
activate Counter-Strike automatically and turn on the in-game
console. If a map has loaded, press the key below "Esc" and it will
scroll down. Just type "yapb add"
and a new bot will be connected...
There
are
comments in the podbot.cfg file to show you how to change
parameters. If the Bots are stuck or you just want to start a new round
type in "yapb killbots" which
will force all bots to be dead instantly.
If you're sick of playing with Bots type "yapb removebots" which will
kick all Bots from the Server.
To
manually
change maps, type "map mapname" to load a new map. So for
example to load "DE_DUST" you type "map
DE_DUST". Existing Bots will
join the Game if the map is loaded.
A
helpful User
Menu is available for performing the most used actions.
It's binded by default (you can change it in podbot.cfg) to the "="
key. If you're pressing the "=" key a Menu with the following options
should appear on your Screen:
1.
Quick Add Bot
This
does what
it says. It quickly adds a Bot giving him a random name,
team, skill and model. Skill will be chosen randomly between your
yapb_minskill/yapb_maxskill values.
2.
Add specific Bot
Allows
you
specify all things for adding Bots.
3.
Kill all Bots
Kills
all Bots
in all Teams. Use this to end Rounds faster, if you
don't like watching the Bots play.
4.
Kill all Players
Same
as above,
but also kills human players.
5.
Fill Server with Bots
Fills
all free
Server Entries with Bots. After selecting this option
you can specify the team or to auto-assign them. If you select a team
the server variables "mp_autoteambalance" and "mp_limitteams" will be
set to 0 and all Bots will only join 1 Team. You can use this to play
alone against all Bots.
6.
Kick Random Bot
Kicks
the first
Bot in the List.
7.
Remove all Bots
Kicks
all Bots
of the Server.
8.
Select Weapon Mode
Opens
another
Sub-Menu where you can select the Weapons Bots will buy
(and use in combat). Selecting Knife Mode will also turn on Jason-Mode.
Selecting Standard Weapons will turn it off again.
STEP
BY STEP INSTALLATION (if you still don't have a clue!)
1) Make sure
Half-Life is installed and Counter-Strike is working
well...
2) To be able to
activate the Console in the Game you need to modify
your Shortcut properties. Open the shortcut properties and add the
following parameters: -game cstrike -console
My
own looks like this:
"D:\Sierra\Half-Life\hl.exe -game cstrike -console"
3) Install the
bot into the Half-Life Folder.
4) Start
Half-Life using the Shortcut you modified in Step 2
5) Click on
"Play CS"
6) Click on
"LAN-Game"
7) Now you need
to select a map for which you already got waypoint
files. All ".pwf" Files in wptdefault folder are valid waypoint files.
We take for example de_dust. Click on "de_dust" in the selection panel
on the right side. Then click on "Create Game".
8) Click on "OK"
if you don't want to modify settings, such as
roundtime etc.
9) Voila! Cs is
loading and soon the game should appear right before
your eyes.
10) If you want
to add bots yourself, open the Console. This is done by
using the "~" key. On my keyboard it's the key located under the "Esc"
key. Type "yapb add" and if your Server isn't already full, a new bot
will join. You can also use the pretty User Menu by pressing the "="
Key.
11) Have Fun
playing for hours without any Internet Costs !
RUNNING
YaPB ON DEDICATED SERVERS
Install
YaPB as
described above for dedicated servers and start the
game the way you normally would.
When
running a
dedicated server most of the YaPB commands that are
normally available from the client console screen are still available.
When
using the
dedicated server, bot will also be automatically spawned
using the podbot.cfg file. You can also use the yapb_quota settings or
the addbot command explained in this file.
PLAYING
WITH THE BOTS
The
Bots will
automatically know the goals of the map. CTs might go for
hostages, Terrorists may want to plant the bomb. VIP Bots will try to
reach the Rescue Points. The goal selection is done dynamically and
will be affected by several factors like Personality, Health,
Team-mates near & Items the Bot is carrying. The Bots will also try
to support team-mates and take cover when they think it's needed.
ORDERING
BOTS THROUGH RADIO COMMANDS
You
can use some
of the Radio Commands to get more support from your
Bots. The first is "Follow Me" which commands Bots in the near to
follow you. You can specify the maximum of following Bots in the
podbot.cfg File (defaults to 3).
If
a Bot is
following you, you can use "Hold this Position" to make a
pause at that Place and look around for enemies. You can use
"Go,go,go!" to stop him from following you again. Note that they won't
follow you in 3 cases:
-
They don't
want to ! The Bots have their own will and they issue a
"Negative" if they don't want to follow you.
-
They don't see
you.
-
They see an
enemy and engage the target.
A
Terrorist Bot
carrying the C4 or picking it up, will also issue a
"Follow Me" sometimes to have some assistance with him. Note that they
have problems following on ladders at the moment because the movement
is unwaypointed.
They
also do
some other Radio Commands like "Need Backup", "Enemy
down", "Enemy spotted", "I'm in Position" (to tell you he's camping)
but not very often, otherwise it would surely get on your nerves...
SUMMARY
OF BOT REACTIONS OT RADIO COMMANDS
Follow me -
Forces Bots in the near to follow you
Hold this
Position - Makes a Bot who's following you, stay awhile at
that position
Taking Fire,
need assistance - Makes all living Bots (not engaged in a
Fight) run to your position to assist you.
Need Backup -
Basically the same as above, but limited to distance and
also the Bots use it sometimes to get some support.
Storm the Front!
- Mighty command! Forces all Bots in the near to rush
in the direction you're pointing to when using that command. Basically
their level of agression is increased so a pathetic frightened Bot
could also turn around and flee.
Get in
position... - Bots in the near will try to take a covered
position and stay there until they either encounter an enemy, you order
them to leave, or they waited too long.
Go,go,go - If a
Bot follows you, this commands stops him from
following. If there are other Bots in the near, they will stop camping
and going to roam the map again (normally used in combination with "Get
in position...")
Team, Fall Back!
- Opposite of "Storm the Front".
Increases Fear and
decreases agression of Bots in the near so that they are more likely to
fall back and stay covered for a short period.
BOT
SKILL DIFFERENCES
First,
Bots with
low skills will pause/camp longer and more often. Bots
with low skills have a bigger surprise time and they shoot slower. Bots
with low skill are lucky if they hit something. Then there are minor
behaviour differences. For example Bots with a skill above 80 use the
knife more often if you're near them. If you want to get headshots all
the time (and really fast) add some Bots with a skill of 100.
You
can easily
change a lot of skill parameters by editing the file
'botskill.cfg' with any text-editor. Also take a look into 'podbot.cfg'
to adjust some more things to your liking...
BOT
PERSONALITIES
There
are 3
different Personalities in POD now, if you have detailnames
turned on they can are shown through the Prefixes like this:
[P*D] - Agressive
[POD] - Normal
[P0D] - Defensive
SUMMARY
OF CONSOLE COMMANDS
IMPORTANT:
I
have changed all the console commands to make them much
more unique (so that you can use it with other bots without problems,
especially other POD's like POD-Bot
2.5, POXBot, E[POD]bot,
IvPBot or
POD-Bot mm). So make sure
you have read this before complaining about
"Unknown command: addbot" :)
All
commands in
square [] brackets are optional and don't need to be
specified. Most of these commands will also work in podbot.cfg. You'll
also get a handy User Menu by pressing the "=" key.
yapb
about
Displays
the
version information of this bot and the author of the
waypoints.
yapb
add [skill] [personality] [team] [name] [model]
Adds
a new Bot
with skill (0-100), personality (0 = Normal, 1 =
Aggressive, 2 = Defensive, Others = Random) and model (1-4 or use 5 to
auto-assign) to team (0-1 or use 5 to auto-assign) with the specified
name. If you don't use the name argument it will be filled randomly
from "addons\yapb\botnames.txt". You can edit this file to use other
names !
You
can skip
parameters in "yapb add" command using "*". Example: "yapb
add * * * bot *" will add a bot named "bot" with random skill,
personality, team and model.
yapb
fill
Fill
the server
with bots.
yapb
killbots
Does
what it
says.
yapb
removebots
Kicks
all Bots
off the Server. Note that this also changes the
yapb_quota to 0.
yapb_minskill
Sets
the minimum
Botskill to use when adding Bots. Standard for this is
0, so a new Bot can have a Skill ranging from 0-100. You can set this
in "bot.cfg" or manually to avoid specifying a skill everytime you add
a Bot.
yapb_maxskill
Same
as above
except specifies the maximum skill when adding bots.
yapb_botchat
1|0
Turns
chatting
Bots on or off
yapb_jasonmode
1|0
Turns
on/off
"JasonMode". In this Mode, Bots are only allowed to use a
Knife and they won't buy any weapons at all. Use this for example in
cs_estate or cs_office to have a scary blood-feast ! This is a Fun Mode
and not to be taken serious ! Kids, don't try this at home :)
yapb_wptfolder
Specifies
the
Folder for loading waypoints. No special chars like
Spaces or quotation marks are allowed. Also note that the Folder must
be inside the addons\yapb Directory...
yapb
botsvotemap x
Orders
all dead
Bots to vote for Map x, where x is a valid number of a
map in your mapcycle.
There
are some
other commands which are only used in
"addons\yapb\podbot.cfg". Please have a look there, too !
There
are a lot
of other console commands only used for waypointing.
These are explained in a separate File called "WaypointsHowToDo.txt"
THANKS
(in no specific order):
botman <http://www.planethalflife.com/botman>
- original author of HPB
bot, upon
which
all CS bots are built
Count
Floyd <http://podbot.nuclearbox.com>
- original author of POD-Bot
Terran
- for some suggestions
CoCoNUT
<http://coconut.de.tc> - for
many good waypoints and the German translation
MarD <http://www.freewebs.com/mard_lltd>
- for some good waypoints originally shipped with E[POD]bot
Pierre-Marie
Baty <http://racc.bots-united.com>
- for some fixes and code
Antony
<http://antony.goodonet.com>
- for the logo and some suggestions
sPlOrYgOn
<http://podbotmm.bots-united.com>
- for some fixes and code
YOU!
:)
...and
everyone
else I missed in this list
HAVE
FUN PLAYING !